Traditionally a video on demand service, such as that provided commercially in the UK under the trade name BT Vision, is supported by encoding video at a constant bit rate and delivering it over a network at the same constant bit rate. This generally requires bandwidth reservation on the network, which can be expensive to provide. Video encoded using compression techniques naturally has variable bit rate, as the number of bits produced when encoding a picture depends on the picture content: how similar it is to previously encoded pictures and how much detail it contains. Some video scenes can be coded to a given quality with a small number of bits, whereas other scenes may require significantly more bits to achieve the same quality. When constant bit rate (CBR) encoding is used, video has to be coded at time varying quality to meet the bit rate constraint. This has been shown to be sub-optimal to the user, who would prefer to see constant quality. Also, by fixing the bit rate independent of the genre of the video content, some genres of content can be encoded well, such as news and drama, whereas others, such as fast moving sport and music videos and concerts, can only be coded quite poorly.
In order to address the perceived image quality issues with CBR encoded video, variable bit rate (VBR) encoded video can be provided, where the video is encoded at a variable rate so as to provide for substantially constant quality. In this respect, WO 2009/112801, incorporated herein by reference in its entirety for all purposes, describes how video data may be encoded to allow for substantially constant perceived quality on the part of a viewing user. However, due to the variability of instantaneous bit rate of VBR encoded data, delivery of variable bit rate encoded data over a network can itself be problematic, if the network is to deliver the data sufficiently quickly such that all video data is delivered in time for it to be decoded and displayed without interruption. In particular, parts of the VBR encoded data which have a high number of bits per frame, such as action sequences or the like, may lead to high instantaneous data rate requirements which the network is unable to deliver. Such situations may then lead to buffer underflow at the decoding client, and hence interruptions in delivery.
In order to avoid such buffer underflow conditions occurring it is therefore important to control carefully the data transfer rate and video data quality (which itself dictates the amount of data to be delivered) such that quality can be improved where possible, whilst preventing buffer underflow conditions occurring.